package com.elitesland.system.repo;

import com.elitesland.system.entity.SysNumberRuleDtlDO;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.querydsl.QuerydslPredicateExecutor;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * <pre></pre>
 *
 * @author mir
 * @date 2020-10-11
 */
@Repository
public interface SysNumberRuleDtlRepo extends JpaRepository<SysNumberRuleDtlDO, Long>, QuerydslPredicateExecutor<SysNumberRuleDtlDO> {

    /**
     * 根据规则ID列出明细对象
     * @param ruleId 规则ID
     * @return 明细对象列表
     */
    List<SysNumberRuleDtlDO> findAllByRuleIdOrderBySeq(Long ruleId);

    /**
     * 根据列表的ID，列出对应的规则明细
     * @param ids 规则明细ID列表
     * @return 规则明细列表
     */
    List<SysNumberRuleDtlDO> findAllByIdIn(List<Long> ids);

    /**
     * 根据规则ID删除所有的明细对象
     * @param ruleId 规则ID
     */
    void deleteAllByRuleId(Long ruleId);

    /**
     * 根据列表的ID，删除对应的规则明细
     * @param ids 规则明细ID列表
     */
    void deleteAllByIdIn(List<Long> ids);
}
